//统一管理项目中用户相关的接口
import request from '@/utils/request'
import type { loginFormData, loginResponseData, userInfoReponseData } from './type'
//项目用户相关的请求地址 -- 请求地址的前缀'/api'(跨域请求需要)说明: request.ts加上,vite.config.ts去掉
enum API {
  LOGIN_URL = '/admin/acl/index/login',
  USERINFO_URL = '/admin/acl/index/info',
  LOGOUT_URL = '/admin/acl/index/logout',
}

//登录接口 -- 第一个any通常用于表示请求的响应体（payload）的类型，它意味着你可以发送任何类型的对象作为请求体，而TypeScript不会对其进行类型检查。第二个loginResponseData才是真正返回的类型
export const reqLogin = (data: loginFormData) => request.post<any, loginResponseData>(API.LOGIN_URL, data) // 请求体参数
//获取用户信息
export const reqUserInfo = () => request.get<any, userInfoReponseData>(API.USERINFO_URL)
//退出登录 -- ts类型设为any, 这是因为退出登录请求返回的data为null
export const reqLogout = () => request.post<any, any>(API.LOGOUT_URL)
